In WLAN deployments without mesh services, end stations (STAs) must associate with an access point (AP) in order to gain access to the network. These end stations are dependent on the AP with which they are associated to communicate.
A so-called mesh network appears functionally equivalent to a broadcast Ethernet from the perspective of other networks and higher layer protocols. As an example, the mesh network may be an LAN according to the IEEE (Institute of Electrical and Electronics Engineers) 802.11 specifications, where links and control elements forward frames among the network members. Thus, it normally appears as if all radio nodes or mesh points (MPs) in a mesh are directly connected at the link layer. This functionality is transparent to higher layer protocols.
The current Draft Standard for Information Technology—Telecommunications and Information Exchange Between Systems—LAN/MAN Specific Requirements—Part 11: Wireless Medium Access Control (MAC) and physical layer (PHY) specifications: Amendment: Mesh Networking, IEEE Unapproved draft, IEEE P802.11s/D2.0, March 2008 includes a protocol for channel switching. However, there are still a number of problems associated with the current protocol which is described in Section 11B.4 of the above draft standard and in particular in Section 11B.4.3. Channel switching is based on a channel switch announcement frame (cf. Section 7.4.16.10), which contains a timer value and a channel precedence value, in addition to the information on the frequency channel to switch to.
According to the protocol, a radio node that detects an interference (e.g radar or the like) or another need to switch the channel, decides on a frequency channel to switch to. It then initiates a channel switch by sending new channel information in a channel switch announcement to its peers. However, it does not immediately switch channel, but defers the actual switch by an amount of time indicated by the timer value. Also, it includes a channel precedence value in the announcement. This is a random value, and is used for prioritization should more stations initiate a channel switch more or less concurrently.
Furthermore, according to the protocol, stations that receive a channel switch announcement propagate it to their peers and also set their timers. Stations that have their timers set are in the process of switching. If a node that is in the process of channel switching receives another channel switch message, it compares the channel precedence value in this new message with its current channel precedence value. Should the new value exceed the current value, then the message is accepted, the parameters of the channel switch operation are set accordingly, and the message is propagated to the peers. Should the channel precedence value be numerically smaller than the current channel precedence value, then this new message is ignored. There is a tie breaking rule based on MAC addresses should the channel precedence values be equal.
The random channel precedence values are thus included in the announcement as a decision support in case multiple stations initiate channel switch concurrently.
Thus, the channel to switch to is decided on by the radio node that detects the interference and initiates the channel switch. However, the protocol contains no guarantee, or even precaution, that this is a valid channel to switch to. A simple situation is illustrated in FIG. 2. A first radio node A initiates a channel switch and proposes to switch to channel No. 5 at a channel precedence value CPV=5. However, a second radio node B is a multi-radio node which already has one of its radio devices tuned to channel No. 5 at a higher channel precedence value CPV=7. In this case, channel switching cannot be carried out, and the mesh is broken.
A similar situation would arise if the second radio node B experienced a lot of interference on channel No. 5, e.g. due to a base station subsystem (BSS) that is located nearby.
Additionally, in the above protocol, an operational frequency channel is always characterized by a channel precedence value. To initiate switching, the initiator node must randomly choose a channel precedence value that is higher than the channel precedence value on the current channel. However, after some channel switching this may no longer be possible.
As already mentioned, the protocol is based on a timer value. Channel switching is not executed until the timer expires. However, the timer value should be chosen so that the channel switch message can be propagated to all nodes that operate on the channel to be evacuated. But an additional time margin should be allowed for, as competing messages can be initiated from the other side of the mesh.
FIG. 3 shows a schematic network environment where a channel switch message (e.g. channel switch announcement (CSA)) propagates from one end (node A) of a mesh network to the other end (node Z). Here, node A initiates a channel switch. It thus needs to set the timer in the channel switch message. The timer value T should be large enough, not only to allow the channel switch message to propagate to the edge node of the mesh (node Z) but also to let a competing message with higher channel precedence value (CPV) to propagate back, here from node Z to node A. The problem is aggravated, as the originator node (node A) of the channel switch message knows neither size nor topology of the mesh. If the timer value is not set correctly, e.g. too short, then this will result in a disconnected mesh. Thus, the channel switch time must be set so that the channel switch message can propagate from one end of the mesh to the other end, but must also have sufficient margin for a competing message to propagate back.
If, in the foregoing scenario, the timer value is set to a very conservative value, then this will result in a mesh that operates for a very long time on a frequency channel that it is no longer allowed to use. As an alternative, one can disallow the nodes to exchange messages during the switch period. However, with this option, the mesh is non-operational for a substantial period of time.